/*
DATE: 2021/12/07
AUTHOR: chenyihui
Desc:  数据模型

*/
package dingtalk

type atMdl struct {
	IsAtAll   bool     `json:"isAtAll,omitempty"`   // 是否所有人推送消息
	AtMobiles []string `json:"atMobiles,omitempty"` // 指定手机号
	AtUserIds []string `json:"atUserIds,omitempty"` // 指定钉钉号
}

// ==========  text ========== //
type textMdl struct {
	Content string `json:"content,omitempty"`
}

// ==========  link  ========== //
type linkMdl struct {
	Text       string `json:"text,omitempty"`
	Title      string `json:"title,omitempty"`
	PicUrl     string `json:"picUrl,omitempty"`
	MessageUrl string `json:"messageUrl,omitempty"`
}

// ==========  markdown   ========== //
type markDownMdl struct {
	Title string `json:"title,omitempty"`
	Text  string `json:"text,omitempty"`
}

// ==========  action card  ========== //
type actionCardBtnOrientationType string

const (
	horizontal actionCardBtnOrientationType = "0" // 横向
	vertical   actionCardBtnOrientationType = "1" // 竖向
)

type actionCardMdl struct {
	Title          string                       `json:"title,omitempty"`
	Text           string                       `json:"text,omitempty"`
	BtnOrientation actionCardBtnOrientationType `json:"btnOrientation,omitempty"` // 水平或者垂直按钮显示
	SingleTitle    string                       `json:"singleTitle,omitempty"`
	SingleURL      string                       `json:"singleURL,omitempty"`
	Btns           []ActionCardMultiBtnMdl      `json:"btns,omitempty"`
}

type ActionCardMultiBtnMdl struct {
	Title     string `json:"title,omitempty"`
	ActionURL string `json:"actionURL,omitempty"`
}

// ==========  feed card  ========== //
type feedCardMdl struct {
	Links []feedCardLinkMdl `json:"links,omitempty"`
}

type feedCardLinkMdl struct {
	Title      string `json:"title,omitempty"`      // 标题
	MessageURL string `json:"messageURL,omitempty"` // 消息url地址
	PicURL     string `json:"picURL,omitempty"`     // 图片url地址
}
